1. Field of the Invention
The present invention relates to a communication scheme for sharing information between a plurality of storage devices coupled to a network, and more particularly, to a communication scheme for propagating a master file over a conventional network bus from one storage device to the same storage device or preferably another storage device.
2. Background of the Field
In the computing industry, it is quite common to transfer information such as data, addresses and commands between a processing device (e.g., workstations) and a storage device (e.g., a file server, an external memory unit, etc.). The idea of interconnecting storage devices with processing devices was principally developed in the early 1970's with the advent of networking systems ("networks"), which permitted a processing device to access other memory and computational resources beyond the immediate proximity of its mainframe. Such interconnections were accomplished by coupling the memory and computational resources to a number of processing devices through physical medium. The physical medium was commonly a conventional network bus, such as, ethernet, token ring and the like, having a plurality of transmission lines, in which the conventional network bus would act as a shared communications path for those devices connected thereto.
In most networks today, each device in the network needs to only "plug" into the network bus to be theoretically connected to each of the other devices. Typically, however, conventional networks are configured to provide users limited access to certain storage devices. In other words, a particular user could be granted permission to access all, none or a limited number of storage devices.
In view of these access limitations, the storage devices were neither designed nor arranged to share files (i.e., information electrically stored in a predetermined format), but rather, were designed to provide an authorized user access to a particular group of files stored therein. This arrangement has created a wide range of accessibility problems. For example, suppose an executable file is stored in a first storage device and a file necessary for completing the operation of the executable file is stored in a second storage device. If the user runs the executable file on his or her processing device, which has access to only the first storage device, the executable file would fail. As a result, the user would have to retrieve the necessary file from the second storage device and download it onto the first storage device. Such retrieval and downloading is a time consuming process, and occasionally, an impossible one if the second storage device is not accessible to the user and/or the user's processing device.
In addition, even if the necessary file is copied on the first storage device, there exists a substantial risk that any updated versions of the necessary file will not consistently be transferred into the first storage device. Therefore, although the above-mentioned executable file may not fail, it would likely perform at a less than optimal level. This problem normally, but not exclusively, occurs in multi-division corporations, wherein each division relies on information provided by the other divisions.
In order to alleviate this accessibility problem, several storage devices 2a-2n are typically coupled together through a network bus 1 as shown in FIG. 1. The network bus 1 enables a first storage device to "log onto" a second storage device through conventional connection protocol, thereby increasing the number of accessible files. As a result, the person using one of the plurality of processing devices 3a-3n would be able to access more information, while still being attached to a single storage device. However, networked storage devices 3a-3n experience other problems.
A primary problem experienced by networked storage devices 3a-3n is that usage dramatically increases for those files common to many application programs. Such increased usage is directly correlated with an increased probability that the common file could become corrupted through human error since more persons now have access to the common file.
A second problem experienced by networked storage devices is related to decreased system performance; namely, if a large number of users are using the common file, the operation speed of the storage device storing the common file is drastically impeded. This would have a significant impact on the productivity of those persons working with any files stored in that storage device.
Another dimension to the problem experienced by networked storage devices relates to system security. Although accessibility problems could be avoided by networking the storage devices together with no access limitations, such a network would pose major security risks. Any person having access to any one of the networked storage devices could intentionally or accidentally erase and/or corrupt files within any of the networked storage devices.
Another problem relates to cost. There are potentially large costs associated with coupling several storage devices together through the network bus, including but not limited to, reconfiguring network support software to support the new system and additional labor costs associated with the design and support of the new configuration.